// pages/address/add/add.js
import { addAddressApi } from '../../../../api/address'

Page({

  /**
   * 页面的初始数据
   */
  data: {
    show: false,
    // 姓名
    name: '',
    // 电话
    phone: '',
    // 标签
    tagName: '家',
    // 用户地址
    address: '',
    // 省
    provinceCode: '',
    // 市
    cityCode: '',
    // 区
    districtCode: '',
    // 是否是默认地址
    isDefault: 0,
    // 用户选择地址 省/市/县
    region: '',
    // 地址id，用于修改地址跳转过来的地址id
    id: '',
  },

  // 省市区
  bindPickerChange(e) {
    const { code, value } = e.detail;
    this.setData({
      provinceCode: code[0],
      cityCode: code[1],
      districtCode: code[2],
      region: value.join('')
    })
  },
  // 标签（家、公司）
  handleRadioChange(e) {
    this.setData({
      tagName: e.detail
    })
  },
  // 是否默认
  handleSwitchChange(e) {
    this.setData({
      isDefault: e.detail.value ? 1 : 0
    })
  },

  async submit() {
    const { name, phone, region, address, tagName, isDefault, provinceCode, cityCode, districtCode } = this.data;
    if (!name) {
      wx.showToast({
        title: '请填写收货人',
        icon: 'none'
      })
      return;
    }

    if (!/^1[3-9][0-9]{9}$/.test(phone)) {
      wx.showToast({
        title: '请填写正确的手机号',
        icon: 'none'
      })
      return;
    }

    if (!region) {
      wx.showToast({
        title: '请选择收货地址',
        icon: 'none'
      })
      return;
    }

    if (!address) {
      wx.showToast({
        title: '请填写详细地址',
        icon: 'none'
      })
      return;
    }

    // 发送请求添加收货地址
    await addAddressApi({
      name, phone, region, address, tagName, isDefault, provinceCode, cityCode, districtCode
    })
    // 跳转回地址列表页面(小程序历史记录最多10层，不要去一直累加)
    wx.navigateBack();
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})